package interfaces;

import java.awt.*;
import javax.swing.*;
 
public class CadastraEvento extends JFrame {
 
	private JComboBox comboAno;
	private JComboBox comboMes;
	private JComboBox comboDia;
	private JTextField caixanome;
	private JTextArea caixadescricao;
	private JTextArea caixaduracao;
	private JTextArea caixahorainicio;
	private JTextField caixatipo;
	
	
	// enum com todos os meses da combo box
	public enum Meses {
		JANEIRO, FEVEREIRO, MARCO, ABRIL, MAIO, JUNHO, JULHO,
		AGOSTO, SETEMBRO, OUTUBRO, NOVEMBRO, DEZEMBRO;
	}	
	
	public CadastraEvento(){       
        
        //Inicia a janela
        JFrame janela = new JFrame("Cadastra Evento");
        
        janela.setSize(550,400);
    
        //Labels
        JLabel labelnome = new JLabel("Nome:");
        JLabel labeldia = new JLabel("Data de Inicio do Evento:   ");
        JLabel labelhorainicio = new JLabel("Horario de Inicio:");
        JLabel labeldescricao = new JLabel("Descricao: ");
        JLabel labelduracao = new JLabel("          Duracao: ");
        JLabel labeltipo = new JLabel("      (Opcional)Tipo: ");
        
        //JComboBox
        comboAno = new JComboBox();
        comboMes = new JComboBox();
        comboDia = new JComboBox();
        
        //TextField
        caixanome = new JTextField(40);
        caixadescricao = new JTextArea(10,38);
        caixaduracao = new JTextArea(" hh:mm",1,4);
        caixahorainicio = new JTextArea(" hh:mm",1,4);
        caixatipo = new JTextField(10);
        
        //scroll pane da descricao
        JScrollPane scroll = new JScrollPane(caixadescricao);
        caixadescricao.setLineWrap(true);
        scroll.setHorizontalScrollBarPolicy(
        JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
        scroll.setVerticalScrollBarPolicy(
        JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
        
        //BUTTONS
        JButton salvar = new JButton("Salvar");
        salvar.setIcon(new
                                ImageIcon("src/images/ok.png"));
        
                salvar.setBackground(Color.WHITE);
                
        JButton voltar = new JButton("Cancelar");
        voltar.setIcon(new
                                ImageIcon("src/images/cancel.png"));
                voltar.setBackground(Color.WHITE);
        
        //Define que o programa se fechara quando a janela for fechada.
        janela.setDefaultCloseOperation( WindowConstants.
                        EXIT_ON_CLOSE);
        
        FlowLayout layout = new FlowLayout(FlowLayout.CENTER);
        //Add no painel1.
        JPanel painel1 = new JPanel(layout);
        painel1.add(labelnome);
        painel1.add(caixanome);
        
 
        //Novos paineis para os comboBox
        JPanel painel2 = new JPanel(layout);
        JPanel painel3 = new JPanel(layout);
        JPanel painel4 = new JPanel(layout);
        JPanel painel5 = new JPanel(layout);
        JPanel painel6 = new JPanel(layout);
        JPanel painel7 = new JPanel(layout);
 
 
        //Painel global.
        JPanel painelglobal = new JPanel(layout);
 
        //Adicionando coisas nos comboBox
        comboMes.addItem(Meses.JANEIRO); comboMes.addItem(Meses.FEVEREIRO);
        comboMes.addItem(Meses.MARCO); comboMes.addItem(Meses.ABRIL);
        comboMes.addItem(Meses.MAIO); comboMes.addItem(Meses.JUNHO);
        comboMes.addItem(Meses.JULHO); comboMes.addItem(Meses.AGOSTO);
        comboMes.addItem(Meses.SETEMBRO); comboMes.addItem(Meses.OUTUBRO);
        comboMes.addItem(Meses.NOVEMBRO); comboMes.addItem(Meses.DEZEMBRO);
        
        for (int i = 1990; i <= 2020; i++) comboAno.addItem(String.format("%04d", i));
        for (int ii = 1;ii <= 30;ii++) comboDia.addItem(String.format("%02d", ii));
        
        //Adicionando items aos paineis.
        painel2.add(labeldia);
        painel2.add(comboDia);
        painel3.add(comboMes);
        painel4.add(comboAno);
        painel6.add(labelhorainicio);
        painel6.add(caixahorainicio);
        painel6.add(labelduracao);
        painel6.add(caixaduracao);
        painel6.add(labeltipo);
        painel6.add(caixatipo);
        painel5.add(labeldescricao);
        painel5.add(scroll);
        painel7.add(salvar);
        painel7.add(voltar);
        painelglobal.add(painel1);
        painelglobal.add(painel2);
        painelglobal.add(painel3);
        painelglobal.add(painel4);
        painelglobal.add(painel6);
        painelglobal.add(painel5);
        painelglobal.add(painel7);
        
        //Container adicionando o painelglobal
        janela.getContentPane().add(painelglobal);
        janela.setContentPane(painelglobal);
        janela.setResizable(false);
        
        //Mostra a janela
         janela.setVisible(true);
    }
    public static void main (String[] args){
        CadastraEvento cadastra = new CadastraEvento();   
    }
}